struct Light {
    vec3 dir;
    float h;
};

struct Ray {
    vec3 origin;
    vec3 dir;
};

struct Material {
    vec3 color;
    float r0;
};

struct Intersect {
    vec3 normal;
    float len;
    Material material;
};

struct Plane {
    vec3 normal;
    float len;
    Material material;
};

struct Sphere {
    vec3 center;
    float radius;
    Material material;
};
